iT邦幫忙

2026 iThome 鐵人賽

DAY 28
0

介紹要生成的程式碼

到了這一天,我發現一個問題。AI 雖然可以快速產生程式,但是如果所有程式碼都放在 Main() 裡,程式會變得越來越長。因此今天請 AI 幫我進行「程式碼重構」。把攻擊、回復、查看狀態分別整理成不同的方法。


程式碼

using System;

class Program
{
    static void Attack(ref int enemyHealth)
    {
        enemyHealth -= 10;
        Console.WriteLine("你造成了 10 點傷害!");
    }

    static void Heal(ref int health)
    {
        health += 20;
        Console.WriteLine("你回復了 20 點生命!");
    }

    static void ShowStatus(int health, int enemyHealth)
    {
        Console.WriteLine("玩家生命:" + health);
        Console.WriteLine("敵人生命:" + enemyHealth);
    }

    static void Main()
    {
        int health = 100;
        int enemyHealth = 50;

        Attack(ref enemyHealth);
        Heal(ref health);
        ShowStatus(health, enemyHealth);
    }
}

解析每行代表的意思

static void Attack(ref int enemyHealth)

建立一個 Attack() 方法。

ref 可以讓方法直接修改原本傳入的變數。

enemyHealth -= 10;

敵人生命值減少 10。

static void Heal(ref int health)

建立一個回復生命的方法。

health += 20;

生命值增加 20。

static void ShowStatus(int health, int enemyHealth)

建立查看狀態的方法,同時接收兩個參數。

Attack(ref enemyHealth);

呼叫攻擊方法。

Heal(ref health);

呼叫回復方法。


結尾心得

今天我學到的並不是新的遊戲功能,而是「如何讓程式更容易閱讀」。AI 可以幫我寫出可以運作的程式,但如果程式碼全部混在一起,之後修改還是會很麻煩。所以除了讓 AI 幫忙生成程式之外,我也可以要求 AI 幫我整理程式結構。但前提還是必須知道方法、參數、變數等基本概念。


上一篇
【Day 27】讓 AI 加入道具與角色系統
下一篇
【Day 29】讓 AI 幫我整合完整的小遊戲
系列文
從 Hello World 學習 C#,到看懂AI生成的遊戲程式碼 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言